package jp.seraph.cui.message;

public class MessageUtil {
    private MessageUtil(){

    }

    public static String numberOfArgumentError(String aCommandName, int aExpected, int aActual){
        return "Number of Argument Error : Command=" + aCommandName + " expected=" + aExpected + " actual=" + aActual;
    }

    public static String argumentTypeMatchingError(String aCommandName, String[] aActualType){
        StringBuilder tBuilder = new StringBuilder();
        tBuilder.append("Type Matching Error : Command=" + aCommandName);
        tBuilder.append(" ArgArray=");
        for (String tArg : aActualType) {
            tBuilder.append(tArg).append(", ");
        }
        return tBuilder.toString();
    }

    public static String resolvePathError(String aFullPath, String aNode){
        return "Path Resolving Error : Node(=" + aNode +") is not Found in " + aFullPath + ".";
    }

    public static String cannotExecuteError(String aFullPath){
        return aFullPath + " is not Command.";
    }

    public static String nodeNameDuplicateError(String aNodeName){
        return "SystenNode(name=" + aNodeName +") already exist.";
    }

    public static String cannotDeleteRootMode(){
        return "Root Mode cannot be deleted.";
    }
}
